package osami.communication.translate;

import osami.communication.OsamiIdentifier;

public abstract class Message
{
	public static final int REMOTE_CALL =			0;
	public static final int REMOTE_CALL_RESPONSE =	1;
	public static final int HANDSHAKE = 			2;
	public static final int SERVICE_UPDATE = 		3;
	public static final int MULTICAST_JOIN = 		4;
	public static final int FIND_SERVICE = 			5;
	public static final int FIND_SERVICE_RESPONSE = 6;

	protected int iCallNumber = -1;
	
	public int getCallNumber()
	{
		return iCallNumber;
	}
	
	public void setCallNumber( int aCallNumber )
	{
		iCallNumber = aCallNumber;
	}

	public abstract int getType();
	public abstract OsamiIdentifier getSender();
	public abstract OsamiIdentifier getDestination();
	public abstract boolean isRequest();
}
